/*  File Name	: Cmd.h
 *  Author		: Pang Jiacai
 *	 E-mail		: 823960168@qq.com
 *  Created on	: 2012-7-11
 *  Description:
 */

#ifndef CMD_H_
#define CMD_H_

///////////////////client request/////////////////////////
#define CLIENT_CREATE_ROLE		10000000
#define CLIENT_LOG_IN  			10000001
#define CLIENT_LOG_OUT 			10000002
#define CLIENT_ENTER_ROOM 		10000003//进入房间
#define CLIENT_EXIT_ROOM 		10000004//退出房间
#define CLIENT_SWITCH_ROOM  	10000005
#define CLIENT_ENTER_TABLE		10000006//进入桌子
#define CLIENT_EXIT_TABLE  		10000007//退出桌子
#define CLIENT_START_GAME	 	10000008//开始游戏
#define CLIENT_BET			 	10000009//下注
#define CLIENT_RAISE			10000010//加赌注
#define CLIENT_ALL_IN	 		10000011//全下
#define CLIENT_FOLD		 		10000012//弃牌
#define CLIENT_CALL		 		10000013//跟牌
#define CLIENT_CHECK		 		10000014//过牌
#define CLIENT_MODIFY_CHIPS	10000015//带入筹码/修改带入筹码

#define CLIENT_RECHARGE				10000100//充值
#define CLIENT_QUERY_CHIPS			10000101//查询筹码
#define CLIENT_EXCHANGE_CHIPS		10000102//兑换筹码

///////////////////server respond/////////////////////////
#define RETURN_CREATE_ROLE		30000000
#define RETURN_LOG_IN  			30000001
#define RETURN_LOG_OUT 			30000002
#define RETURN_ENTER_ROOM 		30000003
#define RETURN_EXIT_ROOM 		30000004
#define RETURN_SWITCH_ROOM  	30000005
#define RETURN_ENTER_TABLE		30000006
#define RETURN_EXIT_TABLE  	30000007
#define RETURN_START_GAME	 	30000008//开始游戏
#define RETURN_BET			 	30000009//下注
#define RETURN_RAISE				30000010//加赌注
#define RETURN_ALL_IN	 		30000011//全下
#define RETURN_FOLD			 	30000012//弃牌
#define RETURN_CALL		 		30000013//跟牌
#define RETURN_CHECK		 		10000014//过牌
#define RETURN_MODIFY_CHIPS	10000015//带入筹码/修改带入筹码

#define RETURN_RECHARGE				10000100//充值
#define RETURN_QUERY_CHIPS			10000101//查询筹码
#define RETURN_EXCHANGE_CHIPS		10000102//兑换筹码

/////////////server to client short for:stc///////////////
#define STC_BROADCAST_ROOM_INFO		50000000 //房间信息更新
#define STC_BROADCAST_TABLE_INFO		50000001 //桌子信息更新

#define STC_DEAL_PRIVATE			50000002//发底牌
#define STC_DEAL_PUBLIC				50000003//发3张公共牌
#define STC_DEAL_TURN				50000004//发转牌
#define STC_DEAL_RIVER				50000005//发河牌
#define STC_NOTIFY_OPERATE			50000006//通知可选操作
#define STC_DISPLAY_CARD			50000007//摊牌
#define STC_SEND_RESULT				50000008//游戏结果
#define STC_PLAYER_LIST				50000009//玩家列表
#define STC_GAME_START				50000010//开始游戏
#define STC_POOL_INFO				50000011//池信息
#define STC_DEALER_INFO				50000012//庄家，大小盲位
#define STC_ENTER_TABLE				50000013//进入桌子
#define STC_EXIT_TABLE				50000014//退出桌子
#define STC_CUT_PROKER			50000015//切牌

///////////////////////inner cmd////////////////////////////
#define INNER_E2G_ERROR_INFO		80000000//消息错误

/////////////////////Error code////////////////////////////
#define ERROR_SERVER_PROBLEM		-1//服务器出错
#define ERROR_CLIENT_INFO			-2//客户端上传的消息错误
#define ERROR_ACCOUNT_EXIST		-3//帐号已存在
#define ERROR_ACCOUNT_NOT_EXIST	-4//帐号不存在
#define ERROR_PASSWORD				-5//密码错误
#define ERROR_ROOM_FULL				-6//房间已满人
#define ERROR_LACK_CHIPS			-7//筹码不足

//////////////////////////////////////////////////////////////////////////////

enum UpdateType
{
	UPDATE_GAME_STATUS 	= 1,//更新游戏状态
	UPDATE_CHIPS 			= 2,//更新筹码
	UPDATE_PLAYER_ENTER 	= 3,//player enter table
	UPDATE_PLAYER_EXIT 	= 4,//player exit table
	END
};

#endif /* CMD_H_ */
